VGA CRT controllers usually provide a number of analog signals such as Red, Green, Blue, Horizontal Sync, and Vertical Sync to drive a CRT display. Flat panel display controllers usually provide digital signals to drive a flat panel display. A flat panel display interprets the digital signals in order to properly display an image. The type of digital signal generated by a flat panel display controller generally varies depending upon the type, model, and manufacturer of a flat panel display. Examples of types of flat panel displays are Electroluminescent (EL), Active and Passive Liquid Crystal Displays (LCD), Vacuum Fluorescent, Plasma, and Electrochromatic.
Flat panel displays may have various pixel formats. One common pixel format for a flat panel display matches a VGA CRT display having 640 columns of pixels horizontally and 480 rows of pixels vertically. Each pixel may consist of various number of subpixels. For example, each pixel of a color flat panel display may comprise red, green, and blue subpixels. Flat panel display resolution (pixel density) and the number of subpixels per pixel may vary.
The digital signal provided by a flat panel display controller may vary depending upon how a pixel may be defined and generated on a specified type of flat panel display. For example, in a monochrome (e.g., black and white) display a pixel may be a single element which turns light or dark (e.g., ON or OFF). Thus a single bit could represent a pixel element turned ON or OFF. FIG. 4A illustrates a single pixel which may be utilized in a black and white display.
In color and grayscale displays, a pixel may be made up of a number of subpixels as illustrated in FIG. 4B. FIG. 4B shows a color pixel in a flat panel display made of three color subpixels, one each of red, green, and blue. Each color subpixel may be represented by one bit of digital data such that a one would turn on the subpixel and a zero would turn off the subpixel. In this manner a three color pixel may be represented by three bits of data, one bit for each sub-pixel. The various states of the subpixels (ON or OFF) may generate up to 2.sup.3 or 8 colors. For example, in FIG. 4B, an orange pixel color may be generated by simultaneously turning on the red and green subpixels.
To achieve a greater number of colors, more bits may be used to represent a pixel on a flat panel display. Referring to FIG. 4C, six bits per pixel (i.e., six subpixels per pixel) may be used to generate a total of 2.sup.6 or 64 colors. FIG. 4D illustrates an embodiment where nine bits per pixel (i.e., nine subpixels per pixel) may be used to generate 2.sup.9 or 512 colors. Grayscale shading may also be accomplished electronically using so-called "dithering" techniques, varying the number of times a pixel may be ON or OFF over a given number of frames and pixel locations. To provide these shading effects in a monochrome display, using one subpixel per pixel, extra bits may be used. For example, two bits per pixel may be used to create 2.sup.2 or four grayscale shades, four bits may be used to create, 2.sup.4 or sixteen shades of grayscale, six bits for 2.sup.6 or 64 shades and so on. The dithering technique selectively switches ON or OFF a pixel over a number of frames. For example, in four bit grayscale, a pixel may be selectively turned ON or OFF over sixteen frames of image data. Due to the persistence of vision phenomenon, the eye interprets this selective switching as different shades of grey.
Color shading may also be accomplished using dithering techniques by varying the number of times a color subpixel may be turned ON or OFF during a varying number of frames. For example, 4 bit color shading may use 4 bits for each color subpixel red, green, and blue, for a total of twelve bits generating 2.sup.12 or 4096 colors. Thus, over sixteen frames, each color may be turned ON or OFF to acquire a desired intensity or shade of color. The element of time may be used to create the appearance of color shades to the human eye.
Other types of flat panel displays may generate more than two native shades per subpixel using a technique known as "panel grey scaling". These flat panel displays internally generate various shades for a subpixel which are native to the panel and do not use the electronic dithering techniques described above. Panel grey scaling uses multiple bits per subpixel to generate the various intensity levels used. For example, a three bit monochrome pixel may have three bits per subpixel (one subpixel per pixel) for a monochrome panel, providing 2.sup.3 or eight native grey scales. Similarly, a nine bit color pixel may have three bits per subpixel for a color flat panel display, generating 2.sup.9 or 512 native scales or shades of colors.
In Panel grey scaling all of the data bits, representing a shade or intensity of a pixel are directly provided to flat panel display. Thus, for panel grey scaling, more bits per pixel are processed by the video display controller, stored into video memory, and scanned out to the panel than in electronic grey scaling. For example, in electronic grey scaling, only one bit per subpixel may be used to perform electronic grey scaling or color shading. Panel grey scaling uses three or more bits per subpixel to directly generate color or monochrome grey scales on a panel.
Flat panel displays, such as the passive super-twist-nematic LCD, may be scanned in two different ways. Single scan flat panel displays are made of one panel utilizing one set of column drivers and one set of row drivers. One disadvantage of the single scan flat panel display may be the large resistance of the column wire stretching from top to bottom of flat panel display which may cause ghosting effects and slow response time. Dual scan flat panel displays reduce column resistance and improve response time. The dual scan flat panel display may be functionally equivalent to two single scan flat panel displays joined together creating one larger flat panel display. The separate panels may be referred to as the upper and lower panel half. Upper and lower panel halves have separate column and row drivers. Because the upper and lower panel halves have smaller heights, the column resistance for each half may be less, reducing ghosting effects and increasing response time.
A dual scan flat panel display uses a different scanning procedure than a single scan flat panel display. For example, in a dual scan flat panel display having a resolution of 640 columns.times.480 rows of pixels, the rows of pixels may be numbered from 0 to 479 from top to bottom, while the columns of pixels may be numbered from 0 to 639 from left to right. In order to reduce flicker, a dual scan flat panel display may begin scanning the upper and lower halves of the panel simultaneously from rows 0 and 240, at the top-left and middle-left corners. Scanning starts on row 0 and row 240 simultaneously followed by row 1 and 241 and so on until the last lines 239 and 639 are scanned.
A buffer memory may be used to store data from a portion of the previous CRT frame in order to display it on flat panel display. The buffer memory may be referred to as a frame buffer and may be usually a type of high speed high bandwidth video memory such as SRAM or DRAM. The panel frame buffer may share with the video memory a portion of buffer memory allocated to graphics for the CRT. A frame buffer may be sized differently to accommodate various panel types as well as a desired control mechanism.
Flat panel display controller circuits may convert binary information from the CPU into one of multiple formats of digital information for a particular flat panel display. The controller may be configured to provide the proper number of digital bits of output per pixel to operate with a particular type of panel. This information tells flat panel display controller how to turn on and off various intensity levels of each individual subpixel or pixel.
In some instances, it may be desirable to drive more than one display from one computer. For example, in a portable computer it may be desirable to simultaneously drive both a flat panel display and a CRT (so-called "dual displays"). A computer may use two separate display controller integrated circuits to drive dual displays. However, to reduce costs, increase reliability, and decrease the weight of portable computers, one display controller integrated circuit may be used to control both a flat panel display and a CRT display.
In addition, it may be desirable to rotate an image on either single or dual displays to change the orientation of the image. For example, it may be desirable to rotate an image 180.degree. to invert the display, as shown in FIGS. 8A and 8B. The use of image rotation has many practical applications for portable computers, multi-media presentations, and for pen-based computers (so-called "personal assistants").
For example, if a document is faxed (facsimiled) upside down (bottom-side scanned first) into a computer fax modem it may be desirable to rotate the received image displayed on a computer display by rotating the image 180.degree.. In another example, a sheet of paper may be scanned upside down on a flat bed scanner. In both these examples the image may use 180.degree. rotation to be properly viewed.
In some instances, one may want to view an unrotated image (0.degree. of rotation) on a computer CRT while rotating (rotating 180.degree.) the same image displayed on a flat panel display. It may desirable to view an image on a CRT and simultaneously display the same image on a liquid crystal display (LCD) projection panel. The image may be projected from the LCD projection panel onto a flat wall or other appropriate surface. An LCD projection panel may be a color or monochrome translucent liquid crystal display which may be placed on the projection surface of a typical overhead projector. If the LCD projection panel is improperly oriented, the projected image may be rotated (upside down or rotated 180.degree.). In order to correct the rotation, the LCD projection panel may be manually turned 180.degree., however a situation may arise where manual rotation of the projection panel may not be possible. Furthermore it may be easier to electronically rotate an inverted projected image into a non-inverted orientation.
Further, in so-called "multi-media" presentations, it may be desirable to display an image on an LCD flat panel display on a portable computer while displaying the same image on an LCD projection panel or large CRT. An individual making the presentation may wish to rotate either display to provide proper orientation for the image or to provide a special video effect.
Portable pen-based computers incorporating flat panel displays are designed such that the user holds flat panel display in one orientation. Typically, batteries are designed into the top of the pen-based computer to allow proper support, provide a comfortable weight balance, and improve the aesthetic appearance. Pen based computers may be designed to dock to a base computer or base CRT display. To reduce physical stress on flat panel display screen and the pen based computer, the pen based computer may be docked to a docking station in an orientation such that the batteries are at the bottom of the screen. Thus the image displayed on flat panel display may be displayed upside down (rotated 180.degree.). To simultaneously display the image on the docking station CRT and flat panel display, it may be desirable to rotate flat panel display image once docked. Alternately, a flat panel display may be the sole screen used when docked to the docking station, and 180.degree. rotation may be used when docked upside down.
In other instances, it may be desirable to use a portable computer on a desk, where two users are sitting on opposite sides of the desk. In order to allow both users to view the display, the computer may have to be turned around periodically, or in the alternative, one user would have to read upside-down. Thus it may be desirable to allow the user to flip flat panel display around a central axis (on a provided hinge) such that a user on the opposite side of the table may view the screen. Doing so, however may place the image upside down with respect to the other user. Thus it may be desirable to selectively rotate flat panel display image so both users can selectively view the image on flat panel display.
Prior techniques have been used for rotating an image displayed on a CRT display using software, however such techniques may take a considerable amount of time to rotate complex images. An image may also be rotated on a CRT display using hardware techniques, such as those incorporated in the TRW LSI (Raytheon) TMC2301 integrated circuit. One disadvantage of this hardware device is it only supports a CRT display using analog signals and does not provide digital signals to drive various flat panel displays.